package com.ywj.collection.javaList;

import java.util.ArrayList;
import java.util.List;

public class ListDelete {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);

        //List系列集合中的两个删除的方法：直接删除元素、通过索引进行删除

        //此时删除的是1这个元素，还是1索引上的元素？为什么？
        //删除1索引上的元素。因为在调用方法的时候，如果方法出现了重载现象，优先调用 实参跟形参类型一致的那个方法
        //此时remove方法是不会自动装箱的（结论，本质如上）
//        list.remove(1);
//        System.out.println(list);   //[1, 3]

        //如果就是想删除1 可以通过索引。
//        list.remove(0);
//        System.out.println(list);   //[2, 3]

        //手动装箱，手动把基本数据类型的1，变成Integer类型
        Integer i = Integer.valueOf(1);
        list.remove(i);
        System.out.println(list);     //[2, 3]

    }
}
